package org.lemon.cla.dto.request;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

@Data
@Schema(description = "社团申请创建请求对象")
public class ClubApplicationCreateRequest {

    @NotNull(message = "申请人用户ID不能为空")
    @Schema(description = "申请人用户ID", example = "1", required = true)
    private Long userId;

    @NotNull(message = "申请社团ID不能为空")
    @Schema(description = "申请社团ID", example = "1", required = true)
    private Long clubId;

    @NotBlank(message = "申请理由不能为空")
    @Schema(description = "申请理由", example = "热爱编程，希望加入社团学习交流。", required = true)
    private String reason;

    // applicationTime, status, reviewTime, reviewerId, reply 由后端自动设置，无需客户端传入
}